﻿//ISecurityStorage.cs
//Copyright (c) 2013 StockSharp LLC, all rights reserved.
//This code module is part of StockSharp library.
//This code is licensed under the GNU GENERAL PUBLIC LICENSE Version 3.
//See the file License.txt for the license details.
//More info on: http://stocksharp.com

namespace StockSharp.Algo.History
{
	using StockSharp.BusinessEntities;

	/// <summary>
	/// Интерфейс для доступа к хранилищу информации об инструментах.
	/// </summary>
	public interface ISecurityStorage
	{
		/// <summary>
		/// Загрузить инструмент по значению его поля.
		/// </summary>
		/// <param name="fieldName">Название поля инструмента.</param>
		/// <param name="fieldValue">Значение поля инструмента.</param>
		/// <returns>Загруженный инструмент. Если инструмент по данным критериям отсутствует, то будет возвращено null.</returns>
		Security LoadBy(string fieldName, object fieldValue);

		/// <summary>
		/// Сохранить инструмент.
		/// </summary>
		/// <param name="security">Инструмент.</param>
		void Save(Security security);
	}
}